Việc lựa chọn giữa git archive và git bundle phụ thuộc vào việc bạn đang gửi mã nguồn thô hay lịch sử kho lưu trữ có thể di chuyển.
1. Bao gồm hay loại bỏ thông tin mô tả (Metadata)
Sự khác biệt kỹ thuật chính là cách xử lý thư mục .git (đối tượng nội bộ). Git archive tình cờ loại bỏ thông tin mô tả nội bộ này để tạo ra một cấu trúc tệp nhẹ và "sạch", ngược lại, Git bundle giữ nguyên toàn bộ đồ thị đối tượng, thực sự biến tệp thành một kho lưu trữ gốc di động (đối tượng nội bộ).
2. Ma trận chiến lược
| Tính năng | Git Archive | Git Bundle |
|---|---|---|
| Chứa .git? | Không | Có |
| Lịch sử commit | Không có | Đầy đủ |
| Sử dụng | Triển khai | Vận chuyển |
| Định dạng | .zip / .tar | Nhị phân |
3. Duy trì trạng thái
Khi nhắm đến nhánh master (đối tượng nội bộ), một bản sao lưu là một ảnh chụp tĩnh. Một gói duy trì tính toàn vẹn của nhánh master (quick_reference), allowing the recipient to perform git log và cập nhật tăng dần.
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>